ETC PLM — Product Lifecycle
ET
ETC PLM
PRODUCT LIFECYCLE · plm.etcos.ca
Signed in as {{ authEmail }} — this account is not authorized for ETC PLM. Use your @etcorp.ca Microsoft account.
{{ authErr }}
Single sign-on with your ETC Microsoft 365 account — same login as ETCOS
ET
ETC PLM PRODUCT LIFECYCLE
/
{{ r.kind }} {{ r.id }} {{ r.name }} {{ r.meta }}
No matches for “{{ search }}”
↑↓ navigate↵ openesc close
PROD
{{ userInitials }}
Loading product dataset…

Control Room

Live operational status across the portfolio · every alert is one click from its fix
All connectors live
{{ k.label }}
{{ k.value }}
{{ k.trend }}vs last wk
Awaiting approval{{ crApprovals.length }}
View all →
{{ e.id }}{{ e.state }}
{{ e.title }}
{{ e.meta }}
{{ e.age }}
Release blockers{{ crBlockers.length }}
View all →
{{ p.pn }}
{{ p.name }}
{{ p.ready }}% {{ p.exc }} open
BOM ⇄ NetSuite issues{{ crNsIssues.length }}
Reconcile →
{{ r.pn }} {{ r.name }} {{ r.label }}
All items in sync
Exceptions by category
Open queue →
{{ c.label }}
{{ c.count }}
IDC-4000{{ prod.lifecycle }}
Integrated Drive Controller
{{ twinRingPct }}
EBOM
All
Elec
Mech
Next issue ⇢
{{ rv.done }} / {{ rv.total }} verified
Next unverified ⇢ Reset
j / k movev verifyn next unverifiedi next issueprogress saved locally
Part / description Type Rev Qty NetSuite
{{ b.checkGlyph }}{{ b.caret }}{{ b.pn }}{{ b.name }}
{{ b.type }} {{ b.rev }} {{ b.qty }} {{ b.nsLabel }}
{{ twinHead.pn }}{{ twinHead.name }}{{ twinHead.type }}{{ twinHead.life }}{{ twinHead.nsLabel }}
3D model
Documents{{ twinDocCount }}
NetSuite
Detail
{{ d.kind }}{{ d.name }}
{{ twinDoc.kind }}
{{ twinDoc.name }}
Download to open in native app
No documents linked to {{ twinHead.pn }}
+ Attach a drawing, datasheet or test report
NetSuite item{{ twinNs.item }}
{{ twinNs.label }}
FieldPLM (Rev C)NetSuiteMatch
{{ f.label }}{{ f.plm }}{{ f.ns }}{{ f.badge }}
Read-back from NetSuite Advanced BOM
{{ twinNs.action }}
{{ twinHead.pn }}{{ twinHead.life }}
{{ twinHead.name }}
{{ d.k }}
{{ d.v }}

Product Portfolio

Built-to-stock products · {{ pfCount }} active
{{ s.label }}
{{ s.value }} {{ s.sub }}
All products
Has exceptions
Not released
Needs sync
Product Line Rev Lifecycle ECOs Exceptions Release readiness NetSuite Updated
{{ r.dot }}
{{ r.pn }}
{{ r.name }}
{{ r.line }} {{ r.rev }} {{ r.life }} {{ r.ecos }} {{ r.exc }}
{{ r.ready }}%
{{ r.nsNote }}
{{ r.updated }}
Portfolio/{{ prod.pn }}
{{ prod.pn }}{{ prod.lifecycle }}
{{ prod.name }}
{{ prod.family }} · Owner {{ prod.owner }} · ERP {{ prod.nsItem }}
Revision
{{ rv.rev }}{{ rv.state }}
Readiness · {{ prod.readyLabel }}
{{ prod.ready }}
{{ prod.rPass }} passed
{{ prod.rFail }} blocking
Overview
EBOM
Documents
3D model
NetSuite
Change orders
Release
{{ lite.title }}
{{ lite.msg }}
{{ s.label }}
Product definition
{{ f.k }}
{{ f.v }}
Revision history
Rev {{ t.rev }}{{ t.state }}{{ t.date }}
{{ t.note }}
Governing changedrives Rev C
{{ eco.id }}{{ eco.state }}Rev {{ eco.from }} → {{ eco.to }}
{{ eco.title }}
{{ eco.appDone }}/{{ eco.appTotal }} approvals
Release readiness{{ prod.ready }}%
{{ c.glyph }}
{{ c.label }}
{{ c.note }}
{{ c.gate }}
Open exceptions{{ excCount }}
{{ x.title }}
{{ x.detail }}
{{ x.part }}
Unified EBOM
All
Mechanical
Electrical
Hardware
⚠ Issues only
Δ vs Rev B
Expand all
Collapse
CSV ↓
Review twin ⇄
{{ bomCount }} shown · {{ bomIssueCount }} issues
{{ revBanner.text }} {{ revBanner.actLabel }}
Find Part / description Type Source Rev Qty Ref des Lifecycle NetSuite Unit $ Ext $ Vendor Lead Docs
{{ b.find }}
{{ b.caret }} {{ b.pn }} {{ b.name }} {{ b.diffLabel }}
{{ b.type }} {{ b.src }} {{ b.rev }} {{ b.qty }} {{ b.ref }} {{ b.life }} {{ b.nsLabel }} {{ b.unit }} {{ b.ext }} {{ b.vendor }} {{ b.lead }} {{ b.docCount }}
Rolled-up material cost{{ bomTotal }}
Bill of Information{{ docCount }} documents
{{ d.kind }}
{{ d.name }}
{{ d.cat }} · Rev {{ d.rev }} · {{ d.size }}
{{ d.status }}
{{ doc.kind }}
{{ doc.name }}
{{ doc.id }} · Rev {{ doc.rev }} · {{ doc.src }}
{{ doc.status }}
{{ doc.kind }}
{{ doc.name }}
Native preview via SolidWorks PDM / Office · Download to open
Linked parts {{ p.id }} Owner {{ doc.owner }} · {{ doc.date }}
Assembly modelSTEP · Rev CLinked to EBOM · click a part in the model or the list
Model parts
{{ m.pn }}
{{ m.name }}
{{ m.src }}
Selected part
{{ selDetail.pn }}{{ selDetail.life }}
{{ selDetail.name }}
Source
{{ selDetail.source }}
Qty
{{ selDetail.qty }}
Unit cost
{{ selDetail.cost }}
Lead time
{{ selDetail.lead }}
Vendor
{{ selDetail.vendor }}
NetSuite
{{ selDetail.nsLabel }}
PLM ⇄ NetSuite reconciliation Rev C EBOM vs ERP item master · last sync {{ recon.lastSync }}
{{ t.label }}
{{ t.value }}
Item Qty Unit cost Vendor Lead Rev Reconcile Action
{{ c.pn }}{{ c.name }}
{{ c.nsItem }}
{{ c.qty.v }}NS {{ c.qty.ns }} {{ c.cost.v }}NS {{ c.cost.ns }} {{ c.vendor.v }}NS {{ c.vendor.ns }} {{ c.lead.v }}NS {{ c.lead.ns }} {{ c.rev.v }}NS {{ c.rev.ns }} {{ c.nsLabel }} {{ c.action.label }}
Change orders{{ ecoCount }} total
{{ e.id }}{{ e.state }}{{ e.from }}→{{ e.to }}
{{ e.title }}
{{ e.priority }}
{{ ecoD.id }}{{ ecoD.state }}{{ ecoD.priority }} priority
Rev {{ ecoD.from }} → {{ ecoD.to }}
{{ ecoD.title }}
Owner {{ ecoD.owner }}Created {{ ecoD.created }}Target {{ ecoD.due }}Cost impact {{ ecoD.cost }}
Reason for change
{{ ecoD.reason }}
Line changes
Change Part Field Before → After
{{ c.kindLabel }} {{ c.part }}
{{ c.name }}
{{ c.field }} {{ c.before }} {{ c.after }}
Approval workflow{{ ecoD.appDone }} of {{ ecoD.appTotal }} approved
{{ a.icon }}
{{ a.role }}
{{ a.name }}
{{ a.status }} {{ a.date }}
{{ g.gate }} gate{{ g.pass }} / {{ g.total }} clear
{{ c.glyph }}
{{ c.label }}
{{ c.note }}
{{ prod.ready }}%
{{ rel.title }}
{{ rel.sub }}
Blocking issues
{{ b.label }}
{{ b.note }}
Fix →
No blocking issues — ready to release
Release baseline will capture
EBOM items (frozen){{ baseline.items }}
BOI documents{{ baseline.docs }}
Governing ECO{{ baseline.eco }}
3D + drawing packagelinked

Exception Management

Cross-product data-integrity queue · {{ excTotal }} open
Clear filter
{{ c.count }}
{{ c.label }}
Severity Category Part Issue Owner Age Action
{{ x.sevLabel }} {{ x.cat }} {{ x.part }}
{{ x.title }}
{{ x.detail }}
{{ x.owner }} {{ x.age }} Resolve →
Exception queue clear — all data-integrity checks pass

Integration & Mapping

System connectors and cross-system identifier mapping · admin only
{{ c.name }}{{ c.status }}
{{ c.role }}
{{ c.count }}
Synced {{ c.sync }}Sync now
Identifier mappingMaps PLM part number → source-system identifiers → ERP item
PLM part Type SolidWorks PDM Altium 365 NetSuite item Mapping
{{ m.pn }} {{ m.name }} {{ m.type }} {{ m.pdm }} {{ m.alt }} {{ m.ns }} {{ m.statusLabel }}
Roles & RACI
Accountability for the PLM process — assignments here drive who can approve ECOs, apply reconciliation fixes and release baselines
config · raci.js
{{ rr.role }}YOU
ETCOS seat · {{ rr.seat }}
{{ p.initials }}{{ p.name }}
Unassigned — open to all, acting as “{{ rr.demo }}”
Process {{ h.label }}
{{ r.process }} {{ c.letter }}
R Responsible — does the work A Accountable — final owner C Consulted I Informed Assigned roles are enforced in-app · unassigned roles stay open until named

Activity Log

Full audit trail — every data change, approval and release · {{ actTotal }} events
{{ f.label }}
When Actor Category Event Target
{{ a.time }} {{ a.actor }} {{ a.cat }} {{ a.action }} {{ a.target }}
No events match this filter.
Session events are recorded locally in this prototype; in production every event carries user, timestamp, before/after values and the governing change object.

Supplier RFQ Portal

PHASE 2 · CONCEPT
Planned extension — outside the MVP workflow. Shown here to reserve the information architecture.
{{ s.n }}
{{ s.title }}
{{ s.desc }}
Open RFQsillustrative data
RFQ Part Invited Responses Best quote Status
{{ r.id }} {{ r.part }} {{ r.name }} {{ r.invited }} {{ r.responses }} {{ r.best }} {{ r.status }}
New engineering change order
{{ mEco.sub }}
{{ s.label }}
Title *
Priority
{{ p.label }}
Reason for change *
Product
{{ mEco.product }}
Revision
{{ mEco.revs }}
Owner
M. Alvarez
{{ p.tick }} {{ p.pn }} {{ p.name }} {{ p.type }}
{{ mEco.selNote }}
{{ mEco.newId }}{{ mEco.prioVal }}{{ mEco.revs }}
{{ mEco.title }}
{{ mEco.reason }}
Affected parts · {{ mEco.selCount }}
{{ p.pn }}
Created as Draft, owned by M. Alvarez. Submit it for approval from the change-order screen when ready.
New product
Creates the product master — sources are mapped afterwards
Part number *
{{ mProd.pnHint }}
Name *
Product line
Owner
Starts at Rev A · Draft with no ERP mapping. Connect SolidWorks PDM / Altium 365 / NetSuite from Integration & mapping to populate the EBOM.
Attach document
Links a controlled document into the Bill of Information
Document name *
Kind
{{ k.label }}
Category
Linked part
Enters the BOI as Draft · Rev —, source Manual. The file itself uploads in production; the prototype records metadata only.
Release IDC-4000 · Rev C
Freezes the baseline and pushes released state to NetSuite
Baseline
REL-C-001
Effective
2026-07-05
EBOM items frozen
{{ mRel.items }}
BOI documents
{{ mRel.docs }}
Governing ECO
ECO-2041 · Approved
ERP push
NetSuite item + BOM revision
{{ mRel.warnCount }} open warnings → released as waivers
!
{{ w.label }}
{{ w.note }}
{{ mRel.ackTick }} I acknowledge these waivers — recorded against my name in the release baseline
{{ toast.msg }} Undo